package com.zelix;

import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.util.*;

public final class re extends qe {

    public static String v = "version=";
    public static String w = "encoding=";
    private String d;
    private nh e;
    private int f;
    private int g;
    private Hashtable h;
    private fy i;
    private Hashtable c;
    private Hashtable j;
    private sy k;
    private fy l;
    private fy m;
    private ty n;
    private fy o;
    private HashMap p;
    private fy q;
    private HashSet u;
    private ArrayList r;
    private Hashtable s;
    private boolean x;
    private boolean y;
    private boolean z;
    private boolean A;
    public static boolean t;
    private static String B[];

    static {
        B = new String[148];
        B[0] = "has no return type";
        B[1] = " which is inconsistent with the previous method entries. All method entries must have return types or no method entries can have return types.";
        B[2] = "\" in class \"";
        B[3] = "has a return type";
        B[4] = "Method \"";
        B[5] = "\" ";
        B[6] = "' has multiple field mappings for field '";
        B[7] = "'.";
        B[8] = "Class '";
        B[9] = "': ";
        B[10] = "input change log '";
        B[11] = "\". Will be mapped to \"";
        B[12] = "\" partial mapping clash (B) while merging with \"";
        B[13] = "\" partial mapping clash (A) while merging with \"";
        B[14] = "\" and not \"";
        B[15] = "Package name \"";
        B[16] = "\" mapping clash while merging with \"";
        B[17] = "'. (2)";
        B[18] = "' could not be renamed to '";
        B[19] = "Field '";
        B[20] = "' and '";
        B[21] = "Field name clash in class '";
        B[22] = "' after field exclusions.  Both '";
        B[23] = "'. (3)";
        B[24] = "' because it has been excluded. It will not be renamed.";
        B[25] = "' in class '";
        B[26] = "'. (1)";
        B[27] = "' are renamed to '";
        B[28] = "' because its superpackage has been excluded. It will be renamed to '";
        B[29] = "Class name clash after class exclusions.  Both '";
        B[30] = "Package '";
        B[31] = "' because the mapping of its package name has been changed. It will be renamed to '";
        B[32] = "' because it has been excluded and the mapping of its package name has been changed. It will be renamed to '";
        B[33] = "' because the mapping of its superpackage has been changed. It will be renamed to '";
        B[34] = "' because it has been excluded. It will be renamed to '";
        B[35] = "Class name clash after package and class exclusions.  Both '";
        B[36] = "has a type";
        B[37] = "Field \"";
        B[38] = "has no type.";
        B[39] = " which is inconsistent with the previous field entries. All field entries must have types or no field entries can have types.";
        B[40] = " fields named \"";
        B[41] = "There are ";
        B[42] = "\" appears more than once in log.";
        B[43] = "\" but no field types are present in log.";
        B[44] = "' after method exclusions.  Both '";
        B[45] = "Method '";
        B[46] = "Method name clash in class '";
        B[47] = "\" to \"";
        B[48] = "\". Cannot also map \"";
        B[49] = "\" already mapped to \"";
        B[50] = "Mapping clash while merging with \"";
        B[51] = "\". Class name \"";
        B[52] = "\" is mapped to \"";
        B[53] = "Package \"";
        B[54] = "\". Current version cannot handle remapping of default package name.";
        B[55] = "Default package is mapped to \"";
        B[56] = "\" and \"";
        B[57] = "\" is not preceded by a mapping for \"";
        B[58] = "'. '";
        B[59] = "' but does not appear in the main part of the change log. (LIC)";
        B[60] = "' (A)";
        B[61] = "ForwardClass:";
        B[62] = "' appears as a Flow Obfuscation ";
        B[63] = " for package '";
        B[64] = "Duplicate ForwardClass: for package '";
        B[65] = "' (B)";
        B[66] = "' with field name '";
        B[67] = "' for ";
        B[68] = "Corrupt Data: '";
        B[69] = "\" appears more than once in class \"";
        B[70] = "\" are both mapped to \"";
        B[71] = "Fields \"";
        B[72] = ")'.";
        B[73] = "' has multiple methods '";
        B[74] = "' but field type not present.";
        B[75] = "' has multiple fields '";
        B[76] = "' has multiple fields named '";
        B[77] = "\" are both remapped to \"";
        B[78] = "Class \"";
        B[79] = "\".";
        B[80] = "\" and package \"";
        B[81] = " but does not appear in the main part of the change log. (LIC)";
        B[82] = "' entries with field name '";
        B[83] = " '";
        B[84] = "TraceBackClass:";
        B[85] = "Duplicate TraceBackClass: '";
        B[86] = "<-";
        B[87] = "Class name \"";
        B[88] = "\" appears more than once.";
        B[89] = "Classes \"";
        B[90] = "' => '";
        B[91] = "MemberClass:";
        B[92] = "' does not exist in the main body of the change log (LIC)";
        B[93] = "MemberClass: '";
        B[94] = "Corrupt Data:  '";
        B[95] = "' in this log but type '";
        B[96] = "' in '";
        B[97] = "' has type '";
        B[98] = "'. Logs could not be fully merged. You must distribute this application as a whole. (2)";
        B[99] = "\" but package '";
        B[100] = " != ";
        B[101] = "\" but there is no corresponding packge level remapping.";
        B[102] = "\" (1)";
        B[103] = "\" but the package remapping is inconsistent with that of another class : \"";
        B[104] = "\" should be remapped to \"";
        B[105] = "\" but current version cannot handle remapping of default package.";
        B[106] = "\" (2)";
        B[107] = "\" is remapped to \"";
        B[108] = "\" but there are no field types to allow the mappings to be distinguished.";
        B[109] = ". All field entries in change logs being merged must have types or no field entries can have types.";
        B[110] = "More than one field with the name \"";
        B[111] = "More than one field \"";
        B[112] = "\" whose fields ";
        B[113] = "\" while merging with \"";
        B[114] = "\" in log \"";
        B[115] = "\" mapping clash in class \"";
        B[116] = "\" appears in class \"";
        B[117] = "\" in log but there are no field types to allow the mappings to be distinguished.";
        B[118] = " which is inconsistent with change log \"";
        B[119] = "have no types";
        B[120] = "\" in log.";
        B[121] = "have types";
        B[122] = "Change log fields ";
        B[123] = "Methods \"";
        B[124] = "' no longer appears in the opened classes and will be assumed to be no longer used.";
        B[125] = "Methods with the signature \"";
        B[126] = " times but there are no method return types to distinguish them.";
        B[127] = "Two methods with the signature \"";
        B[128] = "\" are mapped to the different new method names \"";
        B[129] = "\" appears ";
        B[130] = ")\" in class \"";
        B[131] = " in class '";
        B[132] = "' is mapped to new name '";
        B[133] = "' but the corresponding method in class '";
        B[134] = "' for both methods.";
        B[135] = "Using mapping of '";

        B[136] = "'. ";
        B[137] = ", ";
        B[138] = "'. Logs could not be fully merged. You must distribute this application as a whole. (1)";
        B[139] = "Change log methods ";
        B[140] = "have return types";
        B[141] = "\" but there are no method return types to allow the mappings to be distinguished.";
        B[142] = ")\" name mapping clash in class \"";
        B[143] = "More than one method \"";
        B[144] = "have no return types";
        B[145] = ". All method entries in change logs being merged must have return types or no method entries can have return types.";
        B[146] = ")\" appears in class \"";
        B[147] = "\" there are no method return types to allow the mappings to be distinguished.";

    }

    public re(String s1, nh nh1)
            throws tb {
        p = new HashMap();
        q = new fy();
        u = new HashSet();
        r = new ArrayList();
        s = new Hashtable();
        y = true;
        z = true;
        d = s1;
        e = nh1;
    }

    private void a(String s1, u6 u6_1, String s2) {
        if (k == null)
            k = new sy(f);
        k.b(s1, u6_1, s2);
        y = u6_1.b() != null;
    }

    public void a(String s1, qy qy1) {
        if (k == null)
            k = new sy(f);
        k.a(s1, qy1);
    }

    public void a(String s1, Hashtable hashtable) {
    }

    public void a(String s1, String s2) {
        if (c == null) {
            int i1 = px.a(f);
            c = new Hashtable(i1);
            j = new Hashtable(i1);
        }
        String s3 = (String) c.put(s2, s1);
        if (s3 != null)
            w(B[78] + s2 + B[88]);
        String s4 = (String) j.put(s1, s2);
        if (s4 != null)
            w(B[89] + s4 + B[56] + s2 + B[70] + s1 + "\"");
    }

    public void a(String s1, u6 u6_1, String s2, String s3) {
        if (n == null)
            n = new ty(f);
        n.a(s1, u6_1, s2, s3);
        z = u6_1.b() != null;
    }

    public void a(String s1, sy sy1) {
        if (n == null)
            n = new ty(f);
        n.a(s1, sy1);
    }

    public void b(String s1, String s2) {
    }

    public void a(String s1, String s2, String s3, String s4) {
        String s5 = lt.a(s1);
        u6 u6_1 = b(s2, s3);
        k.b(s5, u6_1, s4);
    }

    public void c(String s1, String s2) {
        b(s1, s2, true);
    }

    private void b(String s1, String s2, boolean flag) {
        StringTokenizer stringtokenizer;
        StringBuffer stringbuffer;
        int j1;
        j1 = bf.d;
        if (h == null) {
            int i1 = px.a(Math.min(g, 5));
            h = new Hashtable(i1);
            i = new fy(i1);
        }
        if (s1.length() > 0 && s2.length() == 0)
            w(B[55] + s1 + B[54]);
        String s3 = (String) h.put(s2, s1);
        if (s3 != null && !s3.equals(s1))
            w(B[53] + s2 + B[52] + s3 + B[56] + s1 + "\"");
        stringtokenizer = new StringTokenizer(s2, ".");
        stringbuffer = new StringBuffer(s2.length());
        if (j1 == 0)goto _L2;else goto _L1
        _L1:
        String s4 = stringtokenizer.nextToken();
        if (stringbuffer.length() > 0)
            stringbuffer.append(".");
        stringbuffer.append(s4);
        if (stringbuffer.length() == s2.length() && j1 == 0)
            break; /* Loop/switch isn't completed */
        String s6 = stringbuffer.toString();
        if (h.containsKey(s6))
            continue; /* Loop/switch isn't completed */
        if (flag) {
            w(B[53] + s2 + B[57] + s6 + "\"");
            if (j1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        h.put(s6, s6);
        i.b(s6, s6, s6);
        _L2:
        if (stringtokenizer.hasMoreTokens())goto _L1;else goto _L3
        _L3:
        String s5 = (String) i.b(s1, s2, s2);
        return;
    }

    public boolean a() {
        return true;
    }

    public boolean b() {
        return false;
    }

    public void a(Hashtable hashtable, Hashtable hashtable1, yg yg1) {
        Enumeration enumeration;
        int k1;
        k1 = bf.d;
        l = new fy(f);
        m = new fy(f);
        if (k == null)
            return;
        enumeration = k.b();
        if (k1 == 0)goto _L2;else goto _L1
        _L1:
        String s1;
        String s2;
        qy qy1;
        Enumeration enumeration1;
        label0:
        {
            s1 = (String) enumeration.nextElement();
            s2 = (String) hashtable.get(lt.b(s1));
            if (s2 == null) {
                s2 = s1;
                if (k1 == 0)
                    break label0;
            }
            s2 = lt.a(s2);
        }
        mt mt = fh.a(lt.b(s2));
        qy1 = k.b(s1);
        enumeration1 = qy1.e();
        if (k1 == 0)goto _L4;else goto _L3
        _L3:
        String s3;
        Vector vector;
        int i1;
        int j1;
        u6 u6_1 = (u6) enumeration1.nextElement();
        s3 = (String) u6_1.a();
        String s4 = (String) u6_1.b();
        vector = qy1.d(u6_1);
        i1 = vector.size();
        if (y) {
            if (i1 > 1)
                d(B[37] + s4 + " " + s3 + B[2] + s1 + B[42]);
            String s5 = (String) vector.get(0);
            String s6 = dp.c(s4, null);
            String s8 = dp.c(s4, hashtable);
            lu lu = yg1.a(lt.b(s2), s3, s8);
            if (lu == null)
                continue; /* Loop/switch isn't completed */
            l5 l5_1 = new l5(s3, s8);
            l5 l5_2 = new l5(s5, s8);
            a(s1, s2, l5_1, l5_2, hashtable1);
            if (k1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        j1 = 0;
        if (k1 == 0)goto _L6;else goto _L5
        _L5:
        String s7 = (String) vector.get(j1);
        lu alu[] = yg1.a(lt.b(s2), s3);
        if (alu == null || alu.length == 0)
            continue; /* Loop/switch isn't completed */
        if (alu.length == 1) {
            lu lu1 = alu[0];
            String s9 = lu1.q();
            l5 l5_3 = new l5(s3, s9);
            l5 l5_4 = new l5(s7, s9);
            a(s1, s2, l5_3, l5_4, hashtable1);
            if (k1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        w(B[41] + alu.length + B[40] + s3 + B[2] + s1 + B[43]);
        j1++;
        _L6:
        if (j1 < i1)goto _L5;else goto _L4
        _L4:
        if (enumeration1.hasMoreElements())goto _L3;else goto _L2
        _L2:
        if (!enumeration.hasMoreElements())
            return;
        if (true)goto _L1;else goto _L7
        _L7:
    }

    private void a(String s1, String s2, l5 l5_1, l5 l5_2, Hashtable hashtable) {
        l5 l5_3 = (l5) l.b(s2, l5_1, l5_2);
        if (l5_3 != null)
            w(B[37] + l5_1.a(hashtable) + B[69] + s1 + "\"");
        l5 l5_4 = (l5) m.b(s2, l5_2, l5_1);
        if (l5_4 != null)
            w(B[71] + l5_4.a(hashtable) + B[56] + l5_1.a(hashtable) + B[70] + l5_2.a(hashtable) + B[2] + s1 + "\"");
    }

    public void a(Hashtable hashtable, Hashtable hashtable1, yg yg1, um um) {
        fy fy1;
        Enumeration enumeration;
        int l1;
        l1 = bf.d;
        o = new fy(f);
        if (n == null)
            return;
        fy1 = new fy(f);
        enumeration = n.a();
        if (l1 == 0)goto _L2;else goto _L1
        _L1:
        String s1;
        String s2;
        mt mt;
        sy sy1;
        Enumeration enumeration1;
        label0:
        {
            s1 = (String) enumeration.nextElement();
            s2 = (String) hashtable.get(lt.b(s1));
            if (s2 == null) {
                s2 = s1;
                if (l1 == 0)
                    break label0;
            }
            s2 = lt.a(s2);
        }
        mt = fh.a(lt.b(s2));
        sy1 = n.a(s1);
        enumeration1 = sy1.b();
        if (l1 == 0)goto _L4;else goto _L3
        _L3:
        String s3;
        String s4;
        qy qy1;
        Enumeration enumeration2;
        u6 u6_1 = (u6) enumeration1.nextElement();
        s3 = (String) u6_1.a();
        s4 = (String) u6_1.b();

        qy1 = sy1.b(u6_1);
        enumeration2 = qy1.e();
        if (l1 == 0)goto _L6;else goto _L5
        _L5:
        String s5;
        String s6;
        Vector vector;
        ou aou[];
        int k1;
        s5 = (String) enumeration2.nextElement();
        s6 = dp.a(s5, hashtable);
        vector = qy1.d(s5);
        if (z) {
            int i1 = vector.size();
            if (i1 == 1) {
                String s8 = (String) vector.get(0);
                String s9 = dp.c(s4, hashtable);
                dp dp1 = new dp(s3, s6, s9);
                dp dp2 = new dp(s8, s6, s9);
                if (!yg1.a(dp1, mt))
                    continue; /* Loop/switch isn't completed */
                a(s1, s2, s3, s5, dp1, dp2, hashtable1, fy1);
                if (l1 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            if (i1 <= 1)
                continue; /* Loop/switch isn't completed */
            w(B[125] + s3 + "(" + s5 + B[130] + s1 + B[129] + i1 + B[126]);
            if (l1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        String s7 = null;
        for (int j1 = 0; j1 < vector.size(); j1++) {
            String s10 = (String) vector.get(j1);
            if (s7 == null) {
                s7 = s10;
                if (l1 == 0)
                    continue;
            }
            if (!s10.equals(s7))
                w(B[127] + s3 + "(" + s5 + B[130] + s1 + B[128] + s7 + B[56] + s10 + "\"");
        }

        n5 n5_1 = new n5(s3, s6);
        aou = yg1.a(mt, n5_1);
        if (aou == null)
            continue; /* Loop/switch isn't completed */
        ve ve1 = new ve(um);
        Arrays.sort(aou, ve1);
        k1 = 0;
        if (l1 == 0)goto _L8;else goto _L7
        _L7:
        if (k1 < aou.length) {
            String s11 = aou[k1].O().e();
            String s12 = (String) vector.get(k1);
            dp dp3 = new dp(s3, s6, s11);
            dp dp4 = new dp(s12, s6, s11);
            a(s1, s2, s3, s5, dp3, dp4, hashtable1, fy1);
        }
        k1++;
        _L8:
        if (k1 < vector.size())goto _L7;else goto _L6
        _L6:
        if (enumeration2.hasMoreElements())goto _L5;else goto _L4
        _L4:
        if (enumeration1.hasMoreElements())goto _L3;else goto _L2
        _L2:
        if (!enumeration.hasMoreElements()) {
            n = null;
            return;
        }
        if (true)goto _L1;else goto _L9
        _L9:
    }

    private void a(String s1, String s2, String s3, String s4, dp dp1, dp dp2, Hashtable hashtable,
                   fy fy1) {
        dp dp3 = (dp) o.b(s2, dp1, dp2);
        if (dp3 != null)
            w(B[4] + dp1.b(hashtable) + B[69] + s1 + "\"");
        dp dp4 = (dp) fy1.b(s2, dp2, dp1);
        if (dp4 != null) {
            String s5 = dp1.a(hashtable);
            w(B[123] + dp4.c() + s4 + B[56] + dp1.c() + s4 + B[70] + dp2.c() + s5 + B[2] + s1 + "\"");
        }
    }

    public void d(String s1) {
        A = true;
        e.a(B[10] + d + B[9] + s1);
    }

    public ArrayList a() {
        ArrayList arraylist;
        int i1;
        i1 = bf.d;
        arraylist = new ArrayList(g);
        if (h == null)goto _L2;else goto _L1
        _L1:
        Enumeration enumeration = h.keys();
        if (i1 == 0)goto _L4;else goto _L3
        _L3:
        String s1 = (String) enumeration.nextElement();
        arraylist.add(lt.b(s1));
        _L4:
        if (enumeration.hasMoreElements())goto _L3;else goto _L2
        _L2:
        Collections.sort(arraylist);
        return arraylist;
    }

    private static qy a(Map map) {
        qy qy1;
        Iterator iterator;
        int i1;
        i1 = bf.d;
        qy1 = new qy(map.size());
        iterator = map.keySet().iterator();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        oe oe1 = (oe) iterator.next();
        qy1.b(oe1.d(), oe1);
        _L2:
        if (!iterator.hasNext())
            return qy1;
        if (true)goto _L1;else goto _L3
        _L3:
    }

    public static String a(File file) {
        wu wu1;
        String s1;
        int i1;
        i1 = bf.d;
        BufferedReader bufferedreader = null;
        wu1 = new wu(null);
        s1 = null;
        try {
            bufferedreader = oc.a(file, wu1);
            s1 = bufferedreader.readLine();
        }
        catch (IOException ioexception) {
        }
        finally {
            if (bufferedreader != null)
                try {
                    bufferedreader.close();
                }
                catch (IOException ioexception1) {
                }
        }
        if (s1 == null)goto _L2;else goto _L1
        _L1:
        StringTokenizer stringtokenizer = new StringTokenizer(s1);
        if (i1 == 0)goto _L4;else goto _L3
        _L3:
        String s2 = stringtokenizer.nextToken();
        if (s2.startsWith(w)) {
            if (s2.length() > w.length() + 2) {
                String s3 = s2.substring(w.length() + 1, s2.length() - 1).trim();
                if (s3.trim().length() > 0)
                    return s3.trim();
            }
            break; /* Loop/switch isn't completed */
        }
        _L4:
        if (stringtokenizer.hasMoreTokens())goto _L3;else goto _L2
        _L2:
        return (String) wu1.a();
    }

    public static String e(String s1) {
        return a(s1, '.');
    }

    public static String a(String s1, char c1) {
        int i1 = s1.lastIndexOf(c1);
        if (i1 != -1)
            return s1.substring(i1 + 1);
        else
            return s1;
    }

    public Set a(String s1) {
        HashSet hashset;
        String s2;
        int i1;
        int j1;
        j1 = bf.d;
        hashset = new HashSet();
        s2 = lt.a(s1);
        i1 = 0;
        if (j1 == 0)goto _L2;else goto _L1
        _L1:
        oe oe1 = (oe) r.get(i1);
        if (oe1.d().equals(s2))
            hashset.add(oe1.b());
        i1++;
        _L2:
        if (i1 >= r.size())
            return hashset;
        if (true)goto _L1;else goto _L3
        _L3:
    }

    public Enumeration e() {
        ArrayList arraylist = new ArrayList(p.keySet());
        Collections.sort(arraylist);
        return Collections.enumeration(arraylist);
    }

    public Map f() {
        return (Map) s.clone();
    }

    public qy b() {
        qy qy1;
        Enumeration enumeration;
        int i1;
        i1 = bf.d;
        qy1 = new qy(q.f());
        enumeration = q.d();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        String s1;
        Vector vector;
        Enumeration enumeration1;
        s1 = (String) enumeration.nextElement();
        Hashtable hashtable = q.b(s1);
        vector = new Vector(hashtable.size());
        enumeration1 = hashtable.keys();
        if (i1 == 0)goto _L4;else goto _L3
        _L3:
        oe oe1 = (oe) enumeration1.nextElement();
        vector.add(oe1);
        _L4:
        if (enumeration1.hasMoreElements())goto _L3;else goto _L5
        _L5:
        Collections.sort(vector);
        qy1.a(s1, vector);
        _L2:
        if (!enumeration.hasMoreElements())
            return qy1;
        if (true)goto _L1;else goto _L6
        _L6:
    }

    public String b(String s1, String s2, String s3) {
        label0:
        {
            label1:
            {
                if (k == null)
                    break label0;
                String s4 = lt.a(s1);
                u6 u6_1 = b(s2, s3);
                Vector vector = k.a(s4, u6_1);
                if (vector == null)
                    return null;
                if (vector.size() == 1) {
                    String s5 = (String) vector.get(0);
                    if (s2.equals(s5))
                        return null;
                    else
                        return s5;
                }
                if (z) {
                    String s6 = is.e(s3);
                    d(B[8] + s4 + B[75] + s6 + " " + s2 + B[7]);
                    if (bf.d == 0)
                        break label1;
                }
                d(B[8] + s4 + B[76] + s2 + B[74]);
            }
            return null;
        }
        return null;
    }

    public String b(String s1, String s2, String as[], String s3) {
        if (n != null) {
            String s4 = lt.a(s1);
            u6 u6_1 = a(s2, s3);
            String s5 = a(as);
            Vector vector = n.a(s4, u6_1, s5);
            if (vector != null && vector.size() > 0) {
                int i1 = vector.size();
                if (i1 == 1) {
                    String s6 = (String) vector.get(0);
                    if (!s2.equals(s6))
                        return s6;
                    else
                        return null;
                } else {
                    w(B[8] + s4 + B[73] + s2 + "(" + s5 + B[72]);
                    return null;
                }
            } else {
                return null;
            }
        } else {
            return null;
        }
    }

    private u6 a(String s1, String s2) {
        String s3 = is.e(s2);
        return new u6(s1, z ? ((Comparable) (s3)) : null);
    }

    public String c() {
        return d;
    }

    public String f(String s1) {
        if (c == null)
            return null;
        String s2 = lt.a(s1);
        String s3 = (String) c.get(s2);
        if (s3 == null || s3.equals(s2))
            return null;
        else
            return lt.b(s3);
    }

    public fy a() {
        fy fy1;
        Enumeration enumeration;
        int i1;
        i1 = bf.d;
        fy1 = new fy(o.f());
        enumeration = o.d();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        String s1;
        Iterator iterator;
        s1 = (String) enumeration.nextElement();
        Hashtable hashtable = o.b(s1);
        iterator = hashtable.entrySet().iterator();
        if (i1 == 0)goto _L4;else goto _L3
        _L3:
        java.util.Map.Entry entry = (java.util.Map.Entry) iterator.next();
        dp dp1 = (dp) entry.getKey();
        dp dp2 = (dp) entry.getValue();
        if (!dp1.equals(dp2))
            fy1.b(lt.b(s1), dp2, dp1);
        _L4:
        if (iterator.hasNext())goto _L3;else goto _L2
        _L2:
        if (!enumeration.hasMoreElements())
            return fy1;
        if (true)goto _L1;else goto _L5
        _L5:
    }

    public ArrayList h() {
        ArrayList arraylist;
        int i1;
        i1 = bf.d;
        arraylist = new ArrayList(f);
        if (j == null)goto _L2;else goto _L1
        _L1:
        Enumeration enumeration = j.keys();
        if (i1 == 0)goto _L4;else goto _L3
        _L3:
        String s1 = (String) enumeration.nextElement();
        String s2 = e(s1);
        String s3 = e((String) j.get(s1));
        arraylist.add(lt.b(s1));
        _L4:
        if (enumeration.hasMoreElements())goto _L3;else goto _L2
        _L2:
        return arraylist;
    }

    public Enumeration i() {
        ArrayList arraylist;
        Enumeration enumeration;
        int i1;
        i1 = bf.d;
        if (l == null)
            break MISSING_BLOCK_LABEL_73;
        arraylist = new ArrayList(l.f());
        enumeration = l.d();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        String s1 = (String) enumeration.nextElement();
        arraylist.add(lt.b(s1));
        _L2:
        if (enumeration.hasMoreElements())goto _L1;else goto _L3
        _L3:
        return Collections.enumeration(arraylist);
        return null;
    }

    public String a(String s1, l5 l5_1) {
        if (l == null)
            return null;
        l5 l5_2 = (l5) l.b(lt.a(s1), l5_1);
        if (l5_2 == null || l5_2.equals(l5_1))
            return null;
        else
            return l5_2.b();
    }

    public Enumeration g(String s1) {
        Hashtable hashtable;
        ArrayList arraylist;
        Enumeration enumeration;
        int i1;
        i1 = bf.d;
        s1 = lt.a(s1);
        if (m == null)
            break MISSING_BLOCK_LABEL_108;
        hashtable = m.b(s1);
        if (hashtable == null)
            break MISSING_BLOCK_LABEL_108;
        arraylist = new ArrayList(hashtable.size());
        enumeration = hashtable.keys();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        l5 l5_1 = (l5) enumeration.nextElement();
        l5 l5_2 = (l5) hashtable.get(l5_1);
        if (!l5_1.equals(l5_2))
            arraylist.add(l5_1);
        _L2:
        if (enumeration.hasMoreElements())goto _L1;else goto _L3
        _L3:
        return Collections.enumeration(arraylist);
        return null;
    }

    public dp a(String s1, dp dp1) {
        if (o == null)
            return null;
        else
            return (dp) o.b(lt.a(s1), dp1);
    }

    public String b(String s1, dp dp1) {
        if (o == null)
            return null;
        dp dp2 = (dp) o.b(lt.a(s1), dp1);
        if (dp2 == null)
            return null;
        String s2 = dp2.c();
        if (s2.equals(dp1.c()))
            return null;
        else
            return s2;
    }

    public String h(String s1) {
        if (h == null)
            return null;
        String s2 = (String) h.get(lt.a(s1));
        if (s2 == null)
            return null;
        String s3 = lt.b(s2);
        if (s3.equals(s1))
            return null;
        else
            return s3;
    }

    public ArrayList d() {
        ArrayList arraylist;
        HashSet hashset;
        int i1;
        i1 = bf.d;
        arraylist = new ArrayList(g);
        hashset = new HashSet(px.a(g));
        if (i == null)goto _L2;else goto _L1
        _L1:
        Enumeration enumeration = i.d();
        if (i1 == 0)goto _L4;else goto _L3
        _L3:
        String s1;
        Enumeration enumeration1;
        s1 = (String) enumeration.nextElement();
        Hashtable hashtable = i.b(s1);
        enumeration1 = hashtable.keys();
        if (i1 == 0)goto _L6;else goto _L5
        _L5:
        String s2 = (String) enumeration1.nextElement();
        if (!s1.equals(s2) && hashset.add(s1))
            arraylist.add(lt.b(s1));
        _L6:
        if (enumeration1.hasMoreElements())goto _L5;else goto _L4
        _L4:
        if (enumeration.hasMoreElements())goto _L3;else goto _L2
        _L2:
        return arraylist;
    }

    public String i(String s1) {
        if (j == null)
            return null;
        String s2 = (String) j.get(lt.a(s1));
        if (s2 == null)
            return null;
        else
            return lt.b(s2);
    }

    public ArrayList e() {
        ArrayList arraylist;
        int i1;
        i1 = bf.d;
        arraylist = new ArrayList(f);
        if (c == null)goto _L2;else goto _L1
        _L1:
        Enumeration enumeration = c.keys();
        if (i1 == 0)goto _L4;else goto _L3
        _L3:
        String s1 = (String) enumeration.nextElement();
        arraylist.add(lt.b(s1));
        _L4:
        if (enumeration.hasMoreElements())goto _L3;else goto _L2
        _L2:
        return arraylist;
    }

    private u6 b(String s1, String s2) {
        u6 u6_1;
        label0:
        {
            String s3 = is.e(s2);
            if (z) {
                u6_1 = new u6(s1, s3);
                if (bf.d == 0)
                    break label0;
            }
            u6_1 = new u6(s1, null);
        }
        return u6_1;
    }

    public Enumeration j(String s1) {
        s1 = lt.a(s1);
        if (l != null) {
            Hashtable hashtable = l.b(s1);
            if (hashtable != null)
                return hashtable.keys();
        }
        return null;
    }

    public ArrayList b(String s1) {
        ArrayList arraylist;
        int i1;
        i1 = bf.d;
        arraylist = new ArrayList();
        if (k == null)goto _L2;else goto _L1
        _L1:
        qy qy1 = k.b(s1);
        if (qy1 == null)goto _L2;else goto _L3
        _L3:
        Enumeration enumeration = qy1.e();
        if (i1 == 0)goto _L5;else goto _L4
        _L4:
        u6 u6_1 = (u6) enumeration.nextElement();
        StringBuffer stringbuffer = new StringBuffer();
        stringbuffer.append(u6_1.b());
        stringbuffer.append(" ");
        stringbuffer.append(u6_1.a());
        arraylist.add(stringbuffer.toString());
        _L5:
        if (enumeration.hasMoreElements())goto _L4;else goto _L2
        _L2:
        return arraylist;
    }

    public ArrayList c(String s1) {
        ArrayList arraylist;
        int i1;
        i1 = bf.d;
        arraylist = new ArrayList();
        if (n == null)goto _L2;else goto _L1
        _L1:
        sy sy1 = n.a(s1);
        if (sy1 == null)goto _L2;else goto _L3
        _L3:
        Enumeration enumeration = sy1.b();
        if (i1 == 0)goto _L5;else goto _L4
        _L4:
        StringBuffer stringbuffer;
        Enumeration enumeration1;
        u6 u6_1 = (u6) enumeration.nextElement();
        qy qy1 = sy1.b(u6_1);
        stringbuffer = new StringBuffer();
        stringbuffer.append(u6_1.b());
        stringbuffer.append(" ");
        stringbuffer.append(u6_1.a());
        qy qy2 = sy1.b(u6_1);
        enumeration1 = qy2.e();
        if (i1 == 0)goto _L7;else goto _L6
        _L6:
        arraylist.add(stringbuffer.toString() + "(" + (String) enumeration1.nextElement() + ")");
        _L7:
        if (enumeration1.hasMoreElements())goto _L6;else goto _L5
        _L5:
        if (enumeration.hasMoreElements())goto _L4;else goto _L2
        _L2:
        return arraylist;
    }

    public HashSet a(String s1) {
        HashSet hashset;
        Iterator iterator;
        int i1;
        i1 = bf.d;
        if (i == null)
            return null;
        Hashtable hashtable = i.b(lt.a(s1));
        if (hashtable == null)
            return null;
        hashset = new HashSet(px.a(hashtable.size()));
        iterator = hashtable.keySet().iterator();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        String s2 = lt.b((String) iterator.next());
        hashset.add(s2);
        _L2:
        if (!iterator.hasNext())
            return hashset;
        if (true)goto _L1;else goto _L3
        _L3:
    }

    private String a(String as[]) {
        StringBuffer stringbuffer;
        int i1;
        int j1;
        j1 = bf.d;
        stringbuffer = new StringBuffer();
        i1 = 0;
        if (j1 == 0)goto _L2;else goto _L1
        _L1:
        stringbuffer.append(as[i1]);
        if (i1 < as.length - 1)
            stringbuffer.append(B[137]);
        i1++;
        _L2:
        if (i1 >= as.length)
            return stringbuffer.toString();
        if (true)goto _L1;else goto _L3
        _L3:
    }

    public static String l(String s1) {
        int i1 = s1.lastIndexOf('.');
        if (i1 == -1)
            return "";
        else
            return s1.substring(0, i1);
    }

    public static String d(String s1) {
        int i1 = s1.lastIndexOf('.');
        if (i1 == -1)
            return s1;
        else
            return s1.substring(i1 + 1);
    }

    private String c(String s1, String s2, String s3) {
        int j1;
        String s4;
        int l1;
        int i2;
        int j2;
        j2 = bf.d;
        int i1 = zu.a(s1, '.') + (s1.length() <= 0 ? 0 : 1);
        j1 = zu.a(s2, '.') + (s2.length() <= 0 ? 0 : 1);
        int k1 = zu.a(s3, '.') + (s3.length() <= 0 ? 0 : 1);
        if (i1 == j1 + 1) {
            s4 = s3 + "." + d(s1);
            if (j2 == 0)
                break MISSING_BLOCK_LABEL_254;
        }
        if (i1 == j1) {
            if (!s1.equals(s2) && k1 >= j1) {
                s4 = l(s3) + "." + d(s1);
                if (j2 == 0)
                    break MISSING_BLOCK_LABEL_254;
            }
            s4 = s3;
            if (j2 == 0)
                break MISSING_BLOCK_LABEL_254;
        }
        if (i1 < j1) {
            s4 = s3;
            if (j2 == 0)
                break MISSING_BLOCK_LABEL_254;
        }
        l1 = 0;
        i2 = 0;
        if (j2 == 0)goto _L2;else goto _L1
        _L1:
        l1 = s1.indexOf('.', l1);
        i2++;
        _L2:
        if (i2 < j1)goto _L1;else goto _L3
        _L3:
        s4 = s3 + "." + s1.substring(l1 + 1);
        return s4;
    }

    public void c() {
        f++;
    }

    public void d() {
        g++;
    }

    public boolean e(String s1) {
        return u.contains(lt.a(s1));
    }

    public boolean m(String s1) {
        return c != null && c.containsKey(lt.a(s1));
    }

    public boolean c(String s1, String s2, String s3) {
        if (k != null) {
            String s4 = lt.a(s1);
            u6 u6_1 = b(s2, s3);
            return k.a(s4, u6_1);
        } else {
            return false;
        }
    }

    public boolean b(String s1, l5 l5_1) {
        return a(s1, l5_1) != null;
    }

    public boolean c(String s1, String s2, String as[], String s3) {
        if (n != null) {
            String s4 = lt.a(s1);
            u6 u6_1 = a(s2, s3);
            String s5 = a(as);
            return n.a(s4, u6_1, s5);
        } else {
            return false;
        }
    }

    public boolean c(String s1, dp dp1) {
        return b(s1, dp1) != null;
    }

    public boolean d(String s1, dp dp1) {
        return o != null && o.a(lt.a(s1), dp1);
    }

    public boolean n(String s1) {
        return j != null && j.containsKey(lt.a(s1));
    }

    public boolean o(String s1) {
        return i != null && i.a(lt.a(s1));
    }

    public boolean p(String s1) {
        return h(s1) != null;
    }

    public boolean q(String s1) {
        return h != null && h.containsKey(lt.a(s1));
    }

    public boolean f() {
        return A;
    }

    public boolean r(String s1) {
        String s2 = f(s1);
        if (s2 != null) {
            String s3 = a(s1, '/');
            String s4 = a(s2, '/');
            return s4.equals(s3) ^ true;
        } else {
            return false;
        }
    }

    public re a(re re1, bs bs, nh nh1) {
        nx nx1;
        int i1;
        int j1;
        int k1;
        k1 = bf.d;
        if (re1.h != null)
            a(re1);
        if (f())
            return this;
        nx1 = null;
        i1 = 0;
        if (re1.c == null)
            break MISSING_BLOCK_LABEL_402;
        nx1 = new nx(re1.c.keys());
        Collections.sort(nx1);
        i1 = nx1.size();
        j1 = 0;
        if (k1 == 0)goto _L2;else goto _L1
        _L1:
        String s1 = (String) nx1.get(j1);
        if (c != null && c.containsKey(s1)) {
            String s2 = (String) c.get(s1);
            String s4 = (String) re1.c.get(s1);
            if (s2.equals(s4))
                continue; /* Loop/switch isn't completed */
            x(B[87] + s1 + B[16] + re1.d + B[11] + s2 + B[14] + s4 + "\"");
            if (k1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        String s3 = (String) re1.c.get(s1);
        if (j == null || !j.containsKey(s3)) {
            a(s3, s1);
            if (k1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        String s5 = (String) j.get(s3);
        w(B[87] + s5 + B[49] + s3 + B[16] + re1.d + B[48] + s1 + B[47] + s3 + "\"");
        j1++;
        _L2:
        if (j1 < i1)goto _L1;else goto _L3
        _L3:
        if (f())
            return this;
        f(re1.d);
        if (f())
            return this;
        if (re1.k != null)
            a(re1, ((List) (nx1)));
        if (f())
            return this;
        if (re1.n != null)
            b(re1, nx1);
        if (f())
            return this;
        HashMap hashmap = new HashMap();
        fy fy1 = new fy();
        if (re1.p != null)
            a(re1, hashmap);
        if (re1.q != null)
            a(re1, fy1);
        if (re1.s != null)
            a(re1, hashmap, fy1);
        d += B[86] + re1.d;
        return this;
    }

    private void a(re re1, List list) {
        int i2 = bf.d;
        if (k == null || y == re1.y)goto _L2;else goto _L1
        _L1:
        w(B[122] + (y ? B[121] : B[119]) + B[118] + re1.d + B[112] + (re1.y ? B[121] : B[119]) + B[109]);
        if (i2 == 0)goto _L3;else goto _L2
        _L2:
        int i1;
        int j1;
        i1 = list.size();
        j1 = 0;
        if (i2 == 0)goto _L5;else goto _L4
        _L4:
        String s1;
        qy qy1;
        nx nx1;
        int k1;
        int l1;
        s1 = (String) list.get(j1);
        qy1 = re1.k.b(s1);
        if (qy1 == null)
            continue;
        nx1 = new nx(qy1.e());
        Collections.sort(nx1);
        k1 = nx1.size();
        l1 = 0;
        if (i2 == 0)goto _L7;else goto _L6
        _L6:
        u6 u6_1 = (u6) nx1.get(l1);
        String s2 = (String) u6_1.a();
        String s3 = (String) u6_1.b();
        Vector vector = qy1.d(u6_1);
        if (vector.size() > 1) {
            if (re1.y) {
                w(B[111] + s3 + " " + s2 + B[116] + s1 + B[114] + re1.d + B[79]);
                if (i2 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            w(B[110] + s2 + B[116] + s1 + B[114] + re1.d + B[108]);
            if (i2 == 0)
                continue; /* Loop/switch isn't completed */
        }
        String s4 = (String) vector.get(0);
        if (k != null) {
            Vector vector1 = k.a(s1, u6_1);
            if (vector1 != null && vector1.size() > 0) {
                if (vector1.size() == 1) {
                    String s5 = (String) vector1.get(0);
                    if (s5.equals(s4))
                        continue; /* Loop/switch isn't completed */
                    x(B[37] + (s3 == null ? "" : s3 + " ") + s2 + B[115] + s1 + B[113] + re1.d + B[11] + s5 + B[14] + s4 + "\"");
                    if (i2 == 0)
                        continue; /* Loop/switch isn't completed */
                }
                if (vector1.size() <= 1)
                    continue; /* Loop/switch isn't completed */
                if (y) {
                    w(B[111] + s3 + " " + s2 + B[116] + s1 + B[120]);
                    if (i2 == 0)
                        continue; /* Loop/switch isn't completed */
                }
                w(B[110] + s2 + B[116] + s1 + B[117]);
                if (i2 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            a(s1, u6_1, s4);
            if (i2 == 0)
                continue; /* Loop/switch isn't completed */
        }
        a(s1, u6_1, s4);
        l1++;
        _L7:
        if (l1 < k1)goto _L6;else goto _L8
        _L8:
        j1++;
        _L5:
        if (j1 < i1)goto _L4;else goto _L3
        _L3:
    }

    private void a(re re1, HashMap hashmap) {
        int j1 = bf.d;
        if (p != null)goto _L2;else goto _L1
        _L1:
        p = (HashMap) re1.p.clone();
        if (j1 == 0)goto _L3;else goto _L2
        _L2:
        String s1;
        qy qy1;
        ArrayList arraylist1;
        Iterator iterator;
        ArrayList arraylist = new ArrayList(re1.p.keySet());
        Collections.sort(arraylist);
        s1 = null;
        qy1 = a(((Map) (p)));
        arraylist1 = null;
        iterator = arraylist.iterator();
        goto _L4
        _L8:
        oe oe1;
        oe oe3;
        Iterator iterator1;
        String s2;
        label0:
        {
            oe1 = (oe) iterator.next();
            s2 = oe1.d();
            if (s1 != null && s2.equals(s1))
                break label0;
            s1 = s2;
            Vector vector = qy1.d(s2);
            if (vector != null) {
                arraylist1 = new ArrayList(vector);
                Collections.sort(arraylist1);
                if (j1 == 0)
                    break label0;
            }
            arraylist1 = null;
        }
        if (arraylist1 == null || arraylist1.size() <= 0)
            break MISSING_BLOCK_LABEL_535;
        if (oe1.b() == null) {
            oe oe2 = (oe) arraylist1.remove(0);
            hashmap.put(new xu(oe1), new xu(oe2));
            if (j1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        oe3 = null;
        int i1 = arraylist1.indexOf(oe1);
        if (i1 > -1)
            oe3 = (oe) arraylist1.remove(i1);
        if (oe3 != null) {
            if (!oe3.c().equals(oe1.c()))
                u(B[19] + oe3.b() + B[25] + s2 + B[97] + is.e(oe3.c()) + B[95] + is.e(oe1.c()) + B[96] + re1.d + B[138]);
            hashmap.put(new xu(oe1), new xu(oe3));
            if (j1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        iterator1 = arraylist1.iterator();
        if (j1 == 0)goto _L6;else goto _L5
        _L5:
        oe oe4 = (oe) iterator1.next();
        if (oe4.b() == null) {
            oe3 = oe4;
            iterator1.remove();
        }
        _L6:
        if (iterator1.hasNext())goto _L5;else goto _L7
        _L7:
        if (oe3 != null) {
            Object obj = p.remove(oe3);
            p.put(oe1, oe1);
            hashmap.put(new xu(oe3), new xu(oe1));
            if (j1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        p.put(oe1, oe1);
        if (j1 == 0)
            continue; /* Loop/switch isn't completed */
        p.put(oe1, oe1);
        _L4:
        if (iterator.hasNext())goto _L8;else goto _L3
        _L3:
    }

    private void a(re re1, HashMap hashmap, fy fy1) {
        int i1 = bf.d;
        if (s != null)goto _L2;else goto _L1
        _L1:
        s = (Hashtable) re1.s.clone();
        if (i1 == 0)goto _L3;else goto _L2
        _L2:
        Iterator iterator = re1.s.entrySet().iterator();
        if (i1 == 0)goto _L5;else goto _L4
        _L4:
        java.util.Map.Entry entry = (java.util.Map.Entry) iterator.next();
        String s1 = (String) entry.getKey();
        dv dv1 = (dv) entry.getValue();
        if (!s.containsKey(s1))
            s.put(s1, dv1);
        _L5:
        if (iterator.hasNext())goto _L4;else goto _L6
        _L6:
        xu xu1;
        Iterator iterator1;
        xu1 = new xu();
        iterator1 = s.entrySet().iterator();
        if (i1 == 0)goto _L8;else goto _L7
        _L7:
        java.util.Map.Entry entry1 = (java.util.Map.Entry) iterator1.next();
        String s2 = (String) entry1.getKey();
        String s3 = l(s2);
        dv dv2 = (dv) entry1.getValue();
        oe oe1 = (oe) dv2.a();
        xu1.a(oe1);
        xu xu2;
        if ((xu2 = (xu) hashmap.get(xu1)) != null)
            dv2.b(xu2.a());
        oe oe2 = (oe) dv2.b();
        xu1.a(oe2);
        if ((xu2 = (xu) fy1.b(s3, xu1)) != null)
            dv2.a(xu2.a());
        _L8:
        if (iterator1.hasNext())goto _L7;else goto _L3
        _L3:
    }

    private void a(re re1, fy fy1) {
        int k1 = bf.d;
        if (q != null)goto _L2;else goto _L1
        _L1:
        q = (fy) re1.q.clone();
        if (k1 == 0)goto _L3;else goto _L2
        _L2:
        Enumeration enumeration = re1.q.d();
        if (k1 == 0)goto _L5;else goto _L4
        _L4:
        String s1;
        Hashtable hashtable;
        nx nx1;
        String s2;
        qy qy1;
        ArrayList arraylist;
        int i1;
        s1 = (String) enumeration.nextElement();
        hashtable = re1.q.b(s1);
        if (!q.a(s1))
            break MISSING_BLOCK_LABEL_629;
        nx1 = new nx(hashtable.keys());
        Collections.sort(nx1);
        s2 = null;
        qy1 = a(((Map) (q.b(s1))));
        arraylist = null;
        i1 = 0;
        goto _L6
        _L11:
        oe oe1;
        oe oe3;
        Iterator iterator;
        String s3;
        label0:
        {
            oe1 = (oe) nx1.get(i1);
            s3 = oe1.d();
            if (s2 != null && s3.equals(s2))
                break label0;
            s2 = s3;
            Vector vector = qy1.d(s3);
            if (vector != null) {
                arraylist = new ArrayList(vector);
                Collections.sort(arraylist);
                if (k1 == 0)
                    break label0;
            }
            arraylist = null;
        }
        if (arraylist == null || arraylist.size() <= 0)
            break MISSING_BLOCK_LABEL_595;
        if (oe1.b() == null) {
            oe oe2 = (oe) arraylist.remove(0);
            fy1.b(s1, new xu(oe1), new xu(oe2));
            if (k1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        oe3 = null;
        int j1 = arraylist.indexOf(oe1);
        if (j1 > -1)
            oe3 = (oe) arraylist.remove(j1);
        if (oe3 != null) {
            if (!oe3.c().equals(oe1.c()))
                u(B[19] + oe3.b() + B[25] + s3 + B[97] + is.e(oe3.c()) + B[95] + is.e(oe1.c()) + B[96] + re1.d + B[98]);
            fy1.b(s1, new xu(oe1), new xu(oe3));
            if (k1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        iterator = arraylist.iterator();
        if (k1 == 0)goto _L8;else goto _L7
        _L7:
        oe oe4 = (oe) iterator.next();
        if (oe4.b() == null) {
            oe3 = oe4;
            iterator.remove();
        }
        _L8:
        if (iterator.hasNext())goto _L7;else goto _L9
        _L9:
        if (oe3 != null) {
            Object obj = q.c(s1, oe3);
            q.b(s1, oe1, oe1);
            fy1.b(s1, new xu(oe3), new xu(oe1));
            if (k1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        q.b(s1, oe1, oe1);
        if (k1 == 0)
            continue; /* Loop/switch isn't completed */
        q.b(s1, oe1, oe1);
        i1++;
        _L6:
        if (i1 < nx1.size())goto _L11;else goto _L10
        _L10:
        if (k1 == 0)
            continue; /* Loop/switch isn't completed */
        q.a(s1, (Hashtable) hashtable.clone());
        _L5:
        if (enumeration.hasMoreElements())goto _L4;else goto _L3
        _L3:
    }

    private void b(re re1, List list) {
        int j2 = bf.d;
        if (n == null || z == re1.z)goto _L2;else goto _L1
        _L1:
        w(B[139] + (z ? B[140] : B[144]) + B[118] + re1.d + B[112] + (re1.z ? B[140] : B[144]) + B[145]);
        if (j2 == 0)goto _L3;else goto _L2
        _L2:
        int i1;
        int j1;
        i1 = list.size();
        j1 = 0;
        if (j2 == 0)goto _L5;else goto _L4
        _L4:
        String s1;
        sy sy1;
        nx nx1;
        int k1;
        s1 = (String) list.get(j1);
        sy1 = re1.n.a(s1);
        if (sy1 == null)
            continue;
        nx1 = new nx(sy1.b());
        Collections.sort(nx1);
        k1 = 0;
        if (j2 == 0)goto _L7;else goto _L6
        _L6:
        u6 u6_1;
        String s2;
        String s3;
        qy qy1;
        nx nx2;
        int l1;
        u6_1 = (u6) nx1.get(k1);
        s2 = (String) u6_1.a();
        s3 = (String) u6_1.b();
        qy1 = sy1.b(u6_1);
        nx2 = new nx(qy1.e());
        Collections.sort(nx2);
        l1 = 0;
        if (j2 == 0)goto _L9;else goto _L8
        _L8:
        String s4 = (String) nx2.get(l1);
        Vector vector = qy1.d(s4);
        if (vector.size() > 1) {
            if (re1.z) {
                w(B[143] + s3 + " " + s2 + "(" + s4 + B[146] + s1 + B[114] + re1.d + B[79]);
                if (j2 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            w(B[143] + s2 + "(" + s4 + B[146] + s1 + B[114] + re1.d + B[141]);
            if (j2 == 0)
                continue; /* Loop/switch isn't completed */
        }
        String s5 = (String) vector.get(0);
        if (n != null) {
            Vector vector1 = n.a(s1, u6_1, s4);
            if (vector1 != null && vector1.size() > 0) {
                int i2 = vector1.size();
                if (i2 > 1) {
                    if (z) {
                        w(B[143] + s3 + " " + s2 + "(" + s4 + B[146] + s1 + B[79]);
                        if (j2 == 0)
                            continue; /* Loop/switch isn't completed */
                    }
                    w(B[143] + s2 + "(" + s4 + B[146] + s1 + B[147]);
                    if (j2 == 0)
                        continue; /* Loop/switch isn't completed */
                }
                String s6 = (String) vector1.get(0);
                if (s6.equals(s5))
                    continue; /* Loop/switch isn't completed */
                x(B[4] + (s3 == null ? "" : s3 + " ") + s2 + "(" + s4 + B[142] + s1 + B[113] + re1.d + B[11] + s6 + B[14] + s5 + "\"");
                if (j2 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            a(s1, u6_1, s4, s5);
            if (j2 == 0)
                continue; /* Loop/switch isn't completed */
        }
        a(s1, u6_1, s4, s5);
        l1++;
        _L9:
        if (l1 < nx2.size())goto _L8;else goto _L10
        _L10:
        k1++;
        _L7:
        if (k1 < nx1.size())goto _L6;else goto _L11
        _L11:
        j1++;
        _L5:
        if (j1 < i1)goto _L4;else goto _L3
        _L3:
    }

    private void a(re re1) {
        nx nx1;
        int i1;
        int j1;
        int i2;
        i2 = bf.d;
        nx1 = new nx(re1.h.keys());
        Collections.sort(nx1);
        i1 = nx1.size();
        j1 = 0;
        if (i2 == 0)goto _L2;else goto _L1
        _L1:
        String s1 = (String) nx1.get(j1);
        if (h != null && h.containsKey(s1)) {
            String s2 = (String) h.get(s1);
            String s4 = (String) re1.h.get(s1);
            if (s2.equals(s4))
                continue;
            x(B[15] + s1 + B[16] + re1.d + B[11] + s2 + B[14] + s4 + "\"");
            if (i2 == 0)
                continue;
        }
        String s3 = (String) re1.h.get(s1);
        int k1 = s1.lastIndexOf('.');
        if (k1 == -1) {
            b(s3, s1, false);
            if (i2 == 0)
                continue;
        }
        String s5 = s1.substring(0, k1);
        String s6 = (String) h.get(s5);
        String s7 = (String) re1.h.get(s5);
        if (s7.equals(s3)) {
            b(s6, s1, false);
            if (s3.equals(s6))
                continue;
            x(B[15] + s1 + B[13] + re1.d + B[11] + s6 + B[14] + s3 + "\"");
            if (i2 == 0)
                continue;
        }
        int l1 = s3.lastIndexOf('.');
        String s8 = s3.substring(l1 + 1);
        String s9 = s6 + "." + s8;
        b(s9, s1, false);
        if (!s3.equals(s9))
            x(B[15] + s1 + B[12] + re1.d + B[11] + s9 + B[14] + s3 + "\"");
        j1++;
        _L2:
        if (j1 >= i1)
            return;
        if (true)goto _L1;else goto _L3
        _L3:
    }

    public void s(String s1) {
        if (s1 != null)
            s1 = lt.a(s1);
        if (c != null) {
            String s2 = (String) c.get(s1);
            Object obj = c.remove(s1);
            Object obj1 = j.remove(s2);
            Object obj2;
            if (k != null)
                obj2 = k.c(s1);
            if (n != null)
                obj2 = n.b(s1);
            x(B[8] + s1 + B[124]);
        }
    }

    public void c(String s1, l5 l5_1) {
        s1 = lt.a(s1);
        if (l != null) {
            l5 l5_2 = (l5) l.c(s1, l5_1);
            l5 l5_3 = (l5) m.c(s1, l5_2);
        }
    }

    public void d(String s1, String s2, String s3) {
        String s4 = lt.a(s1);
        u6 u6_1 = b(s2, s3);
        Vector vector = k.b(s4, u6_1);
    }

    public void e(String s1, dp dp1) {
        dp dp2;
        if (o != null)
            dp2 = (dp) o.c(lt.a(s1), dp1);
    }

    public void t(String s1) {
        if (s1 != null)
            s1 = lt.a(s1);
        if (h != null) {
            String s2 = (String) h.get(s1);
            Object obj = h.remove(s1);
            Object obj1 = i.c(s2, s1);
            x(B[30] + s1 + B[124]);
        }
    }

    public void u(String s1) {
        e.b(B[10] + d + B[9] + s1);
    }

    public void v(String s1) {
        e.c(B[10] + d + B[9] + s1);
    }

    public void w(String s1) {
        A = true;
        e.d(B[10] + d + B[9] + s1);
    }

    public void x(String s1) {
        e.e(B[10] + d + B[9] + s1);
    }

    void d(String s1, String s2) {
        if (c == null || !c.containsKey(s1)) {
            w(B[8] + lt.a(s1) + B[62] + B[84] + B[81]);
            r.add(null);
            return;
        }
        String s3 = null;
        String s4 = null;
        if (s2 != null) {
            if (!s2.startsWith("1") && !s2.startsWith("2")) {
                w(B[68] + s2 + B[67] + B[84] + B[83] + lt.a(s1) + B[60]);
                r.add(null);
                return;
            }
            String s5 = (String) px.a(s1, c);
            try {
                s3 = qe.e(s2, lt.b(s5));
            }
            catch (NumberFormatException _ex) {
                w(B[68] + s2 + B[67] + B[84] + B[83] + lt.a(s1) + B[65]);
                r.add(null);
                return;
            }
            s4 = qe.c(s2);
        }
        oe oe1 = new oe(s1, s3, s4);
        oe oe2 = (oe) p.put(oe1, oe1);
        if (oe2 != null)
            w(B[85] + lt.a(s1) + B[82] + oe1.b() + "'");
        u.add(s1);
        r.add(oe1);
    }

    void f(String s1, String s2) {
        label0:
        {
            if (c != null && c.containsKey(s1)) {
                String s3 = (String) c.get(s1);
                try {
                    int ai[] = qe.d(s2, lt.b(s3));
                    Object obj = r.get(ai[0]);
                    Object obj1 = r.get(ai[1]);
                    if (obj != null && obj1 != null) {
                        dv dv1 = new dv(obj, obj1);
                        s.put(s1, dv1);
                    }
                    break label0;
                }
                catch (NumberFormatException _ex) {
                    w(B[94] + s2 + B[67] + B[91] + B[83] + s1 + "'");
                    break label0;
                }
                catch (IndexOutOfBoundsException _ex) {
                    w(B[94] + s2 + B[67] + B[91] + B[83] + s1 + B[90] + s3 + "'");
                }
                if (bf.d == 0)
                    break label0;
            }
            w(B[93] + s1 + B[92]);
        }
    }

    void a(String s1, String s2, String s3) {
        if (c == null || !c.containsKey(s2)) {
            w(B[8] + lt.a(s2) + B[62] + B[61] + B[63] + s1 + B[59]);
            r.add(null);
            return;
        }
        String s4 = null;
        String s5 = null;
        if (s3 != null) {
            if (!s3.startsWith("1") && !s3.startsWith("2")) {
                w(B[68] + s3 + B[67] + B[61] + B[63] + s1 + B[60]);
                r.add(null);
                return;
            }
            String s6 = (String) px.a(s2, c);
            try {
                s4 = qe.e(s3, lt.b(s6));
            }
            catch (NumberFormatException _ex) {
                w(B[68] + s3 + B[67] + B[61] + B[63] + s1 + B[65]);
                r.add(null);
                return;
            }
            s5 = qe.c(s3);
        }
        oe oe1 = new oe(s2, s4, s5, s1);
        oe oe2 = (oe) q.b(s1, oe1, oe1);
        if (oe2 != null)
            w(B[64] + s1 + B[58] + lt.a(s2) + B[66] + oe1.b() + "'");
        u.add(s2);
        r.add(oe1);
    }

    public void g() {
        x = true;
    }

    public void k(String s1, String s2) {
        String s3 = lt.a(s1);
        String s4 = lt.a(s2);
        String s5 = (String) c.get(s3);
        s(s3);
        a(s5, s4);
    }

    public void a(dd dd1, Hashtable hashtable, yg yg1) {
        fy fy1;
        fy fy2;
        Enumeration enumeration;
        int i1;
        i1 = bf.d;
        fy1 = new fy(l.f());
        fy2 = new fy(m.f());
        enumeration = l.d();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        String s1;
        Iterator iterator;
        s1 = (String) enumeration.nextElement();
        Hashtable hashtable1 = l.b(s1);
        iterator = hashtable1.entrySet().iterator();
        if (i1 == 0)goto _L4;else goto _L3
        _L3:
        java.util.Map.Entry entry = (java.util.Map.Entry) iterator.next();
        l5 l5_1 = (l5) entry.getKey();
        l5 l5_2 = (l5) entry.getValue();
        lu lu = yg1.a(lt.b(s1), l5_1.b(), l5_1.a());
        String s2 = (String) px.a(lt.b(s1), hashtable);
        s2 = lt.a(s2);
        if (dd1.a(lu)) {
            if (!l5_1.b().equals(l5_2.b())) {
                l5 l5_3 = (l5) l5_1.clone();
                x(B[19] + l5_1.b() + B[25] + s2 + B[18] + l5_2.b() + B[24]);
                fy1.b(s1, l5_1, l5_3);
                l5 l5_6 = (l5) fy2.b(s1, l5_3, l5_1);
                if (l5_6 == null)
                    continue; /* Loop/switch isn't completed */
                d(B[21] + s2 + B[22] + l5_1.b() + B[20] + l5_6.b() + B[27] + l5_3.b() + B[26]);
                if (i1 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            fy1.b(s1, l5_1, l5_2);
            l5 l5_4 = (l5) fy2.b(s1, l5_2, l5_1);
            if (l5_4 == null)
                continue; /* Loop/switch isn't completed */
            d(B[21] + s2 + B[22] + l5_1.b() + B[20] + l5_4.b() + B[27] + l5_2.b() + B[17]);
            if (i1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        fy1.b(s1, l5_1, l5_2);
        l5 l5_5 = (l5) fy2.b(s1, l5_2, l5_1);
        if (l5_5 != null)
            d(B[21] + s2 + B[22] + l5_1.b() + B[20] + l5_5.b() + B[27] + l5_2.b() + B[23]);
        _L4:
        if (iterator.hasNext())goto _L3;else goto _L2
        _L2:
        if (!enumeration.hasMoreElements()) {
            l = fy1;
            m = fy2;
            return;
        }
        if (true)goto _L1;else goto _L5
        _L5:
    }

    public void b(dd dd1, Hashtable hashtable, yg yg1) {
        fy fy1;
        fy fy2;
        Enumeration enumeration;
        int i1;
        i1 = bf.d;
        fy1 = new fy(o.f());
        fy2 = new fy(o.f());
        enumeration = o.d();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        String s1;
        Iterator iterator;
        s1 = (String) enumeration.nextElement();
        Hashtable hashtable1 = o.b(s1);
        iterator = hashtable1.entrySet().iterator();
        if (i1 == 0)goto _L4;else goto _L3
        _L3:
        java.util.Map.Entry entry = (java.util.Map.Entry) iterator.next();
        dp dp1 = (dp) entry.getKey();
        dp dp2 = (dp) entry.getValue();
        mt mt = fh.a(lt.b(s1));
        ou ou = yg1.a(mt, dp1);
        String s2 = (String) px.a(lt.b(s1), hashtable);
        s2 = lt.a(s2);
        if (dd1.a(ou)) {
            if (!dp1.c().equals(dp2.c())) {
                dp dp3 = (dp) dp1.clone();
                x(B[45] + dp1.b(hashtable) + B[25] + s2 + B[18] + dp2.c() + B[24]);
                fy1.b(s1, dp1, dp3);
                dp dp6 = (dp) fy2.b(s1, dp3, dp1);
                if (dp6 == null)
                    continue; /* Loop/switch isn't completed */
                d(B[46] + s2 + B[44] + dp1.b(hashtable) + B[20] + dp6.b(hashtable) + B[27] + dp3.b(hashtable) + B[26]);
                if (i1 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            fy1.b(s1, dp1, dp2);
            dp dp4 = (dp) fy2.b(s1, dp2, dp1);
            if (dp4 == null)
                continue; /* Loop/switch isn't completed */
            d(B[46] + s2 + B[44] + dp1.b(hashtable) + B[20] + dp4.b(hashtable) + B[27] + dp2.b(hashtable) + B[17]);
            if (i1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        fy1.b(s1, dp1, dp2);
        dp dp5 = (dp) fy2.b(s1, dp2, dp1);
        if (dp5 != null)
            d(B[46] + s2 + B[44] + dp1.b(hashtable) + B[20] + dp5.b(hashtable) + B[27] + dp2.b(hashtable) + B[23]);
        _L4:
        if (iterator.hasNext())goto _L3;else goto _L2
        _L2:
        if (!enumeration.hasMoreElements()) {
            o = fy1;
            return;
        }
        if (true)goto _L1;else goto _L5
        _L5:
    }

    public void a(dd dd1) {
        HashSet hashset;
        Hashtable hashtable;
        Object obj;
        Object obj1;
        int i1;
        int j1;
        j1 = bf.d;
        if (dd1 == null)
            return;
        hashset = null;
        if (h == null)
            break MISSING_BLOCK_LABEL_606;
        hashset = new HashSet();
        hashtable = new Hashtable(px.a(h.size()));
        obj = new fy(i.f());
        obj1 = new ArrayList(h.keySet());
        Collections.sort(((List) (obj1)));
        i1 = 0;
        if (j1 == 0)goto _L2;else goto _L1
        _L1:
        String s1 = (String) ((ArrayList) (obj1)).get(i1);
        String s3 = (String) h.get(s1);
        if (dd1.d(lt.b(s1))) {
            if (!s1.equals(s3)) {
                hashset.add(s1);
                hashtable.put(s1, s1);
                x(B[30] + s1 + B[18] + s3 + B[24]);
                hashtable.put(s1, s1);
                ((fy) (obj)).b(s1, s1, s1);
                if (j1 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            hashtable.put(s1, s3);
            ((fy) (obj)).b(s3, s1, s1);
            if (j1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        String s5 = l(s1);
        String s7 = (String) h.get(s5);
        String s9 = (String) hashtable.get(s5);
        if (hashset.contains(s5)) {
            String s11 = c(s3, s7, s9);
            if (!s11.equals(s3)) {
                hashset.add(s1);
                x(B[30] + s1 + B[18] + s3 + B[33] + s11 + "'");
            }
            hashtable.put(s1, s11);
            ((fy) (obj)).b(s11, s1, s1);
            if (j1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        if (dd1.d(lt.b(s5)) && !s3.startsWith(s7 + ".")) {
            String s12 = c(s3, s7, s9);
            if (!s12.equals(s3)) {
                hashset.add(s1);
                x(B[30] + s1 + B[18] + s3 + B[28] + s12 + "'");
            }
            hashtable.put(s1, s12);
            ((fy) (obj)).b(s12, s1, s1);
            if (j1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        hashtable.put(s1, s3);
        ((fy) (obj)).b(s3, s1, s1);
        i1++;
        _L2:
        if (i1 < ((ArrayList) (obj1)).size())goto _L1;else goto _L3
        _L3:
        h = hashtable;
        i = ((fy) (obj));
        if (c == null)
            break MISSING_BLOCK_LABEL_1291;
        hashtable = new Hashtable(px.a(c.size()));
        obj = new Hashtable(px.a(j.size()));
        obj1 = c.entrySet().iterator();
        if (j1 == 0)goto _L5;else goto _L4
        _L4:
        String s2;
        String s4;
        String s6;
        String s8;
        String s13;
        label0:
        {
            String s14;
            label1:
            {
                java.util.Map.Entry entry = (java.util.Map.Entry) ((Iterator) (obj1)).next();
                s2 = (String) entry.getKey();
                s4 = (String) entry.getValue();
                s6 = d(s2);
                s8 = d(s4);
                String s10 = l(s2);
                s13 = null;
                if (h != null)
                    s13 = (String) h.get(s10);
                if (s13 == null)
                    s13 = s10;
                if (hashset == null || !hashset.contains(s10))
                    break label0;
                if (dd1.c(lt.b(s2)) && !s6.equals(s8)) {
                    s14 = s13 + "." + s6;
                    x(B[8] + s2 + B[18] + s4 + B[32] + s14 + "'");
                    if (j1 == 0)
                        break label1;
                }
                s14 = s13 + "." + s8;
                x(B[8] + s2 + B[18] + s4 + B[31] + s14 + "'");
            }
            hashtable.put(s2, s14);
            String s16 = (String) ((Hashtable) (obj)).put(s14, s2);
            if (s16 == null)
                continue; /* Loop/switch isn't completed */
            d(B[35] + s2 + B[20] + s16 + B[27] + s14 + B[7]);
            if (j1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        String s15;
        label2:
        {
            if (dd1.c(lt.b(s2)) && !s6.equals(s8)) {
                s15 = s13 + "." + s6;
                x(B[8] + s2 + B[18] + s4 + B[34] + s15 + "'");
                if (j1 == 0)
                    break label2;
            }
            s15 = s4;
        }
        hashtable.put(s2, s15);
        String s17 = (String) ((Hashtable) (obj)).put(s15, s2);
        if (s17 != null)
            d(B[29] + s2 + B[20] + s17 + B[27] + s15 + B[7]);
        _L5:
        if (((Iterator) (obj1)).hasNext())goto _L4;else goto _L6
        _L6:
        c = hashtable;
        j = ((Hashtable) (obj));
    }

    public void b(String s1, String s2, String s3, String s4) {
        String s5 = lt.a(s1);
        u6 u6_1 = b(s2, s3);
        Object obj = null;
        Vector vector = k.a(s5, u6_1);
        if (vector.size() == 1) {
            String s6 = (String) vector.get(0);
            Vector vector1 = k.b(s5, u6_1);
            u6 u6_2 = b(s4, s3);
            k.b(s5, u6_1, s6);
        } else {
            String s7 = is.e(s3);
            d(B[8] + s5 + B[6] + s7 + " " + s2 + B[7]);
        }
    }

    public dp a(String s1, String s2, dp dp1, dp dp2, Hashtable hashtable) {
        String s3 = lt.a(s2);
        String s4 = lt.a(s1);
        dp dp3 = (dp) o.c(s4, dp1);
        dp dp4 = (dp) o.b(s3, dp1, dp2);
        if (dp4 != null && !dp4.equals(dp2)) {
            String s5 = (String) hashtable.get(s1);
            if (s5 == null)
                s5 = s4;
            String s6 = (String) hashtable.get(s2);
            if (s6 == null)
                s6 = s3;
            String s7 = B[45] + dp1.b(hashtable) + B[131] + s5 + B[132] + dp2.c() + B[133] + s6 + B[132] + dp4.c() + B[136] + B[135] + dp4.c() + B[134];
            x(s7);
            o.b(s3, dp1, dp4);
            return dp4;
        } else {
            return dp2;
        }
    }

    private void f(String s1) {
        Iterator iterator;
        int i1;
        i1 = bf.d;
        j.clear();
        iterator = c.entrySet().iterator();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        java.util.Map.Entry entry;
        String s2;
        String s9;
        label0:
        {
            entry = (java.util.Map.Entry) iterator.next();
            s2 = (String) entry.getKey();
            String s3 = l(s2);
            String s4 = d(s2);
            String s5 = (String) entry.getValue();
            String s6 = l(s5);
            String s7 = d(s5);
            if (s3.length() == 0) {
                j.put(s5, s2);
                if (i1 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            String s8 = (String) h.get(s3);
            if (s8.length() > 0) {
                s9 = s8 + "." + s7;
                if (i1 == 0)
                    break label0;
            }
            s9 = s7;
        }
        entry.setValue(s9);
        String s10 = (String) j.put(s9, s2);
        if (s10 != null) {
            w(B[50] + s1 + B[51] + s10 + B[49] + s9 + B[48] + s2 + B[47] + s9 + "\"");
            return;
        }
        _L2:
        if (iterator.hasNext())goto _L1;else goto _L3
        _L3:
    }

    private void a(List list) {
        int l1 = bf.d;
        if (k == null)goto _L2;else goto _L1
        _L1:
        boolean flag;
        int i1;
        int j1;
        flag = true;
        i1 = list.size();
        j1 = 0;
        if (l1 == 0)goto _L4;else goto _L3
        _L3:
        String s1;
        nx nx1;
        int k1;
        s1 = (String) list.get(j1);
        qy qy1 = k.b(s1);
        if (qy1 == null)
            continue;
        nx1 = new nx(qy1.e());
        Collections.sort(nx1);
        k1 = 0;
        if (l1 == 0)goto _L6;else goto _L5
        _L5:
        u6 u6_1 = (u6) nx1.get(k1);
        String s2 = (String) u6_1.a();
        if (flag) {
            flag = false;
            y = u6_1.b() != null;
            if (l1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        if (y != (u6_1.b() != null))
            w(B[37] + s2 + B[2] + s1 + B[5] + (y ? B[38] : B[36]) + B[39]);
        k1++;
        _L6:
        if (k1 < nx1.size())goto _L5;else goto _L7
        _L7:
        j1++;
        _L4:
        if (j1 < i1)goto _L3;else goto _L2
        _L2:
    }

    public void m() {
        HashMap hashmap;
        Iterator iterator;
        int j1;
        j1 = bf.d;
        if (c == null)
            return;
        hashmap = new HashMap();
        iterator = c.entrySet().iterator();
        if (j1 == 0)goto _L2;else goto _L1
        _L1:
        java.util.Map.Entry entry = (java.util.Map.Entry) iterator.next();
        String s1 = (String) entry.getKey();
        String s2 = l(s1);
        String s3 = (String) entry.getValue();
        String s4 = l(s3);
        String s5 = null;
        if (h != null)
            s5 = (String) h.get(s2);
        if (s2.length() > 0) {
            if (s2.equals(s4)) {
                if (s5 != null) {
                    if (s4.equals(s5))
                        continue; /* Loop/switch isn't completed */
                    w(B[78] + s1 + B[107] + s3 + B[99] + s2 + B[104] + s5 + B[102]);
                    if (j1 == 0)
                        continue; /* Loop/switch isn't completed */
                }
                String s6 = (String) hashmap.put(s2, s4);
                if (s6 == null || s4.equals(s6))
                    continue; /* Loop/switch isn't completed */
                w(B[78] + s1 + B[107] + s3 + B[103] + s4 + B[100] + s6 + B[79]);
                if (j1 == 0)
                    continue; /* Loop/switch isn't completed */
            }

            if (s5 != null) {
                if (s4.equals(s5))
                    continue; /* Loop/switch isn't completed */
                w(B[78] + s1 + B[107] + s3 + B[99] + s2 + B[104] + s5 + B[106]);
                if (j1 == 0)
                    continue; /* Loop/switch isn't completed */
            }
            w(B[78] + s1 + B[107] + s3 + B[101]);
            if (j1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        if (s4.length() > 0)
            w(B[78] + s1 + B[107] + s3 + B[105]);
        _L2:
        if (iterator.hasNext())goto _L1;else goto _L3
        _L3:
        if (hashmap == null)goto _L5;else goto _L4
        _L4:
        java.util.Map.Entry aentry[];
        int i1;
        aentry = new java.util.Map.Entry[hashmap.size()];
        hashmap.entrySet().toArray(aentry);
        em em1 = new em();
        Arrays.sort(aentry, em1);
        i1 = 0;
        if (j1 == 0)goto _L7;else goto _L6
        _L6:
        b((String) aentry[i1].getValue(), (String) aentry[i1].getKey(), false);
        i1++;
        _L7:
        if (i1 < aentry.length)goto _L6;else goto _L5
        _L5:
    }

    public void h() {
        Iterator iterator;
        int i1;
        i1 = bf.d;
        if (c == null || h == null)
            return;
        iterator = c.entrySet().iterator();
        if (i1 == 0)goto _L2;else goto _L1
        _L1:
        java.util.Map.Entry entry = (java.util.Map.Entry) iterator.next();
        String s1 = (String) entry.getKey();
        String s2 = (String) entry.getValue();
        if (i.a(s2)) {
            Hashtable hashtable = i.b(s2);
            nx nx1 = new nx(hashtable.keys());
            Collections.sort(nx1);
            w(B[78] + s1 + B[80] + nx1.get(0) + B[77] + s2 + B[79]);
        }
        _L2:
        if (!iterator.hasNext())
            return;
        if (true)goto _L1;else goto _L3
        _L3:
    }

    private void b(List list) {
        int l1 = bf.d;
        if (n == null)goto _L2;else goto _L1
        _L1:
        boolean flag;
        int i1;
        int j1;
        flag = true;
        i1 = list.size();
        j1 = 0;
        if (l1 == 0)goto _L4;else goto _L3
        _L3:
        String s1;
        sy sy1;
        nx nx1;
        int k1;
        s1 = (String) list.get(j1);
        sy1 = n.a(s1);
        if (sy1 == null)
            continue;
        nx1 = new nx(sy1.b());
        Collections.sort(nx1);
        k1 = 0;
        if (l1 == 0)goto _L6;else goto _L5
        _L5:
        u6 u6_1 = (u6) nx1.get(k1);
        String s2 = (String) u6_1.a();
        String s3 = (String) u6_1.b();
        if (flag) {
            flag = false;
            z = s3 != null;
            if (l1 == 0)
                continue; /* Loop/switch isn't completed */
        }
        if (z != (s3 != null)) {
            qy qy1 = sy1.b(u6_1);
            nx nx2 = new nx(qy1.e());
            Collections.sort(nx2);
            String s4 = (String) nx2.get(0);
            w(B[4] + s2 + "(" + s4 + ")" + B[2] + s1 + B[5] + (z ? B[0] : B[3]) + B[1]);
        }
        k1++;
        _L6:
        if (k1 < nx1.size())goto _L5;else goto _L7
        _L7:
        j1++;
        _L4:
        if (j1 < i1)goto _L3;else goto _L2
        _L2:
    }

    public void i() {
        if (c != null) {
            nx nx1 = new nx(c.keys());
            Collections.sort(nx1);
            a(nx1);
            b(nx1);
        }
    }
}